Method and apparatus for network access

ABSTRACT

A method, apparatus and computer program product are provided to provide network access credentials and network access to a remote device via a proxy device. In some example embodiments, a method is provided that comprises receiving a request for network access credentials from a remote device. In some example embodiments, the network access credentials comprise identification information related to at least one SIM. The method of this embodiment may also include determining whether network access credentials are available for the remote device. The method of this embodiment may also include causing the network access credentials to be provided to the remote device in an instance in which network access credentials are available for the remote device. In some example embodiments, the network access credentials enable access to a network by the remote device via one or more proxy devices.

TECHNOLOGICAL FIELD

Example embodiments of the present invention relate generally tosubscriber identity modules (SIMs) and, more particularly, to theprovisioning of a SIM on a device not connected to a network.

BACKGROUND

In a Global System for Mobile Communications (GSM) network, a subscriberidentity module or subscriber identification module (SIM) and/or in aUniversal Mobile Telecommunications System (UTMS) network a SIM or auniversal SIM (U-SIM) may be used to provide identification informationthat enables access to a network. The SIM may take the form of aremovable chip that is insertable in a mobile terminal, it may take theform of a chip that is embedded in the mobile terminal and/or it maytake the form of a software based SIM e.g. a virtual SIM (VSIM). Incases where a VSIM is used, the content of a traditional SIM card is notnecessarily physically stored in a memory of a specific device. In thesecases, the SIM card information may reside in a network database whichmay be accessed to obtain the relevant SIM information.

BRIEF SUMMARY

A method, apparatus and computer program product are therefore providedaccording to some example embodiments of the present invention in orderto enable a remote device to access a subscription database, via a proxydevice, in order to retrieve SIM (e.g. VSIM) information for networkaccess. In particular, a remote device may not be configured tocommunicate with an access point and/or other network entity directly toretrieve SIM information for network access. However, the remote devicemay still be configured to connect (e.g. device to devicecommunications) with a proxy device in order to operate on a licensedfrequency band and/or on a network (e.g. cellular network). In suchcases, the remote device may be configured to obtain network accesscredentials for the network by communicating via the proxy device. Theproxy device, in some example embodiments, may be configured to obtaincredentials from a subscription database on behalf of the remote device,may operate as a relay (e.g. data pipe) for the remote device, or mayhave one or more credentials stored in a local memory and may issuethose credentials to the remote device. In operation, the remote devicemay then connect to the proxy device or another proxy device to accessthe network based on the network access credentials.

In one embodiment, a method is provided that comprises receiving arequest for network access credentials from a remote device. In someexample embodiments, the network access credentials compriseidentification information related to at least one SIM. The method ofthis embodiment may also include determining whether network accesscredentials are available for the remote device. The method of thisembodiment may also include causing the network access credentials to beprovided to the remote device in an instance in which network accesscredentials are available for the remote device. In some exampleembodiments, the network access credentials enable access to a networkby the remote device via one or more proxy devices.

In another embodiment, an apparatus is provided that includes at leastone processor and at least one memory including computer program codewith the at least one memory and the computer program code beingconfigured, with the at least one processor, to cause the apparatus toat least receive a request for network access credentials from a remotedevice. In some example embodiments, the network access credentialscomprise identification information related to at least one SIM. The atleast one memory and computer program code may also be configured to,with the at least one processor, cause the apparatus to determinewhether network access credentials are available for the remote device.The at least one memory and computer program code may also be configuredto, with the at least one processor, cause the apparatus to cause thenetwork access credentials to be provided to the remote device in aninstance in which network access credentials are available for theremote device. In some example embodiments, the network accesscredentials enable access to a network by the remote device via one ormore proxy devices.

In the further embodiment, a computer program product may be providedthat includes at least one non-transitory computer-readable storagemedium having computer-readable program instruction stored therein withthe computer-readable program instructions including programinstructions configured to receive a request for network accesscredentials from a remote device. In some example embodiments, thenetwork access credentials comprise identification information relatedto at least one SIM. The computer-readable program instructions may alsoinclude program instructions configured to determine whether networkaccess credentials are available for the remote device. Thecomputer-readable program instructions may also include programinstructions configured to cause the network access credentials to beprovided to the remote device in an instance in which network accesscredentials are available for the remote device. In some exampleembodiments, the network access credentials enable access to a networkby the remote device via one or more proxy devices.

In yet another embodiment, an apparatus is provided that includes meansfor receiving a request for network access credentials from a remotedevice. In some example embodiments, the network access credentialscomprise identification information related to at least one SIM. Theapparatus of this embodiment may also include means for determiningwhether network access credentials are available for the remote device.The apparatus of this embodiment may also include means for causing thenetwork access credentials to be provided to the remote device in aninstance in which network access credentials are available for theremote device. In some example embodiments, the network accesscredentials enable access to a network by the remote device via one ormore proxy devices.

In one embodiment, a method is provided that comprises receiving arequest for network access credentials from a remote device via a proxydevice. The method of this embodiment may also include generatingnetwork access credentials. In some example embodiments, the networkaccess credentials enable the remote device, in an instance in which theremote device is connect to the proxy device, to connect a network usingthe network access credentials. The method of this embodiment may alsoinclude causing the network access credentials to be transferred to theremote device via the proxy device.

In another embodiment, an apparatus is provided that includes at leastone processor and at least one memory including computer program codewith the at least one memory and the computer program code beingconfigured, with the at least one processor, to cause the apparatus toat least receive a request for network access credentials from a remotedevice via a proxy device. The at least one memory and computer programcode may also be configured to, with the at least one processor, causethe apparatus to generate network access credentials. In some exampleembodiments, the network access credentials enable the remote device, inan instance in which the remote device is connect to the proxy device,to connect a network using the network access credentials. The at leastone memory and computer program code may also be configured to, with theat least one processor, cause the apparatus to cause the network accesscredentials to be transferred to the remote device via the proxy device.

In the further embodiment, a computer program product may be providedthat includes at least one non-transitory computer-readable storagemedium having computer-readable program instruction stored therein withthe computer-readable program instructions including programinstructions configured to receive a request for network accesscredentials from a remote device via a proxy device. Thecomputer-readable program instructions may also include programinstructions configured to generate network access credentials. In someexample embodiments, the network access credentials enable the remotedevice, in an instance in which the remote device is connect to theproxy device, to connect a network using the network access credentials.The computer-readable program instructions may also include programinstructions configured to cause the network access credentials to betransferred to the remote device via the proxy device.

In yet another embodiment, an apparatus is provided that includes meansfor receiving a request for network access credentials from a remotedevice via a proxy device. The apparatus of this embodiment may alsoinclude means for generating network access credentials. In some exampleembodiments, the network access credentials enable the remote device, inan instance in which the remote device is connect to the proxy device,to connect a network using the network access credentials. The apparatusof this embodiment may also include means for causing the network accesscredentials to be transferred to the remote device via the proxy device.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments of the presentdisclosure in general terms, reference will now be made to theaccompanying drawings, which are not necessarily drawn to scale, andwherein:

FIG. 1 is an illustration of a system for providing remote device withaccess to a network via a proxy device in accordance with an exampleembodiment of the present invention;

FIG. 2 is a block diagram of an apparatus from the perspective of aremote device and/or a proxy device that may be configured in accordancewith an example embodiment of the present invention;

FIG. 3 is a block diagram of an apparatus from the perspective of anetwork entity that may be configured in accordance with an exampleembodiment of the present invention;

FIG. 4 is a flow chart of the operations performed from the perspectiveof a proxy device in accordance with an example embodiment of thepresent invention;

FIG. 5 is a flow chart of the operations performed from the perspectiveof a network entity in accordance with an example embodiment of thepresent invention; and

FIG. 6 is a flow chart of the operations performed from the perspectiveof a remote device in accordance with an example embodiment of thepresent invention.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all, embodiments of the invention are shown. Indeed,various embodiments of the invention may be embodied in many differentforms and should not be construed as limited to the embodiments setforth herein; rather, these embodiments are provided so that thisdisclosure will satisfy applicable legal requirements. Like referencenumerals refer to like elements throughout. As used herein, the terms“data,” “content,” “information,” and similar terms may be usedinterchangeably to refer to data capable of being transmitted, receivedand/or stored in accordance with embodiments of the present invention.Thus, use of any such terms should not be taken to limit the spirit andscope of embodiments of the present invention.

Additionally, as used herein, the term ‘circuitry’ refers to (a)hardware-only circuit implementations (e.g., implementations in analogcircuitry and/or digital circuitry); (b) combinations of circuits andcomputer program product(s) comprising software and/or firmwareinstructions stored on one or more computer readable memories that worktogether to cause an apparatus to perform one or more functionsdescribed herein; and (c) circuits, such as, for example, amicroprocessor(s) or a portion of a microprocessor(s), that requiresoftware or firmware for operation even if the software or firmware isnot physically present. This definition of ‘circuitry’ applies to alluses of this term herein, including in any claims. As a further example,as used herein, the term ‘circuitry’ also includes an implementationcomprising one or more processors and/or portion(s) thereof andaccompanying software and/or firmware. As another example, the term‘circuitry’ as used herein also includes, for example, a basebandintegrated circuit or applications processor integrated circuit for amobile phone or a similar integrated circuit in a server, a cellularnetwork device, other network device, and/or other computing device.

As defined herein, a “computer-readable storage medium,” which refers toa physical storage medium (e.g., volatile or non-volatile memorydevice), may be differentiated from a “computer-readable transmissionmedium,” which refers to an electromagnetic signal.

Referring now to FIG. 1, a system for providing a remote device 12 withaccess to a network 14 via a proxy device 10 is described herein. Theremote device 12 may be a device that is not able to communicate with anetwork access point, such as network entity 16 and/or is not able todirectly attach to a local access point (e.g. because of networkincompatibility or the like). In some example embodiments, a proxydevice 10 and/or a remote device 12 may be configured for, but notlimited to, machine type communications (MTC), device to device (D2D)communications, machine to machine (M2M) communications, near fieldcommunication (NFC), short-range communication, e.g., Bluetoothcommunications, Zigbee communications, Institute of Electrical andElectronics Engineers (IEEE) 802.11 communications and/or the like. Theremote device 12 therefore may connect to another device, such as theproxy device 10 in order to connect to the network 14 via the proxydevice 10. The proxy device 10 and/or the remote device 12 may be ofvarious types of mobile communication devices such as, for example,mobile telephones, PDAs, pagers, laptop computers, tablets or any ofnumerous other hand held or portable communication devices, computationdevices, content generation devices, content consumption devices, orcombinations thereof. The proxy device 10 may communicate via a network14, such as a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A)network, an IEEE 802.11 wireless local area network (WLAN), a GlobalSystems for Mobile communications (GSM) network, a Code DivisionMultiple Access (CDMA) network, e.g., a Wideband CDMA (WCDMA) network, aCDMA2000 network or the like, a General Packet Radio Service (GPRS)network or other type of network. In one example embodiment, the systemmay also include a network entity 16, such as a subscription database, aserver or other computing device, for providing network accesscredentials to the proxy device 10. However, the system of otherembodiments may not include a network entity for providing networkaccess credentials, and the proxy device 10 may be configured to providethe network credentials from a local memory.

Referring now to FIG. 2, an apparatus 20 that may be embodied by orotherwise associated with a proxy device 10 and or a remote device 12may include or otherwise be in communication with a processor 22, amemory device 24, a communication interface 26, a user interface 28 anda circuit card or other secure module 30 or other type of secure memoryfor storing a plurality of SIMs. A SIM, such as a CDMA SIM (CSIM), aUSIM, an interne protocol (IP) multimedia subsystem (IMS) SIM (ISIMs), aremovable user identify module (RUIM), a VSIM or the like, may store orbe configured to store the network access application (NAA) thatincludes the cryptographic network access credentials that allows use ofat least some of the services of the communication service provider. TheNAA may be stored on a removable module or a non-removable module, e.g.,a surface mounted or embedded chip.

In some example embodiments, the processor 22 (and/or co-processors orany other processing circuitry assisting or otherwise associated withthe processor) may be in communication with the memory device 24 via abus for passing information among components of the apparatus 20. Thememory device may include, for example, one or more volatile and/ornon-volatile memories. In other words, for example, the memory devicemay be an electronic storage device (e.g., a computer readable storagemedium) comprising gates configured to store data (e.g., bits) that maybe retrievable by a machine (e.g., a computing device like theprocessor). The memory device may be configured to store information,data, content, applications, instructions, or the like for enabling theapparatus to carry out various functions in accordance with an exampleembodiment of the present invention. For example, the memory devicecould be configured to buffer input data for processing by theprocessor. Additionally or alternatively, the memory device could beconfigured to store instructions for execution by the processor.

The apparatus 20 may, in some embodiments, be embodied by a proxy device10 and or a remote device 12. However, in some embodiments, theapparatus may be embodied as a chip or chip set. In other words, theapparatus may comprise one or more physical packages (e.g., chips)including materials, components and/or wires on a structural assembly(e.g., a baseboard). The structural assembly may provide physicalstrength, conservation of size, and/or limitation of electricalinteraction for component circuitry included thereon. The apparatus maytherefore, in some cases, be configured to implement an embodiment ofthe present invention on a single chip or as a single “system on achip.” As such, in some cases, a chip or chipset may constitute meansfor performing one or more operations for providing the functionalitiesdescribed herein.

The processor 22 may be embodied in a number of different ways. Forexample, the processor may be embodied as one or more of varioushardware processing means such as a coprocessor, a microprocessor, acontroller, a digital signal processor (DSP), a processing element withor without an accompanying DSP, or various other processing circuitryincluding integrated circuits such as, for example, an ASIC (applicationspecific integrated circuit), an FPGA (field programmable gate array), amicrocontroller unit (MCU), a hardware accelerator, a special-purposecomputer chip, or the like. As such, in some embodiments, the processormay include one or more processing cores configured to performindependently. A multi-core processor may enable multiprocessing withina single physical package. Additionally or alternatively, the processormay include one or more processors configured in tandem via the bus toenable independent execution of instructions, pipelining and/ormultithreading. In the embodiment in which the apparatus 20 is embodiedas a proxy device 10 and/or a remote device 12, the processor may beembodied by the processor of a proxy device 10 and/or a remote device12.

In an example embodiment, the processor 22 may be configured to executeinstructions stored in the memory device 24 or otherwise accessible tothe processor. Alternatively or additionally, the processor may beconfigured to execute hard coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to an embodimentof the present invention while configured accordingly. Thus, forexample, when the processor is embodied as an ASIC, FPGA or the like,the processor may be specifically configured hardware for conducting theoperations described herein. Alternatively, as another example, when theprocessor is embodied as an executor of software instructions, theinstructions may specifically configure the processor to perform thealgorithms and/or operations described herein when the instructions areexecuted. However, in some cases, the processor may be a processor of aspecific device (e.g., a proxy device 10 and/or a remote device 12)configured to employ an embodiment of the present invention by furtherconfiguration of the processor by instructions for performing thealgorithms and/or operations described herein. The processor mayinclude, among other things, a clock, an arithmetic logic unit (ALU) andlogic gates configured to support operation of the processor.

Meanwhile, the communication interface 26 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network 14 and/or any other device or module in communicationwith the apparatus 20. In this regard, the communication interface mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may alternatively or also support wiredcommunication. As such, for example, the communication interface mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB) or other mechanisms.

In some example embodiments, such as instances in which the apparatus 20is embodied by a proxy device 10 and/or a remote device 12, theapparatus may include a user interface 28 that may, in turn, be incommunication with the processor 22 to receive an indication of a userinput and/or to cause provision of an audible, visual, mechanical orother output to the user. As such, the user interface may include, forexample, a keyboard, a mouse, a joystick, a display, a touch screen(s),touch areas, soft keys, a microphone, a speaker, or other input/outputmechanisms. Alternatively or additionally, the processor may compriseuser interface circuitry configured to control at least some functionsof one or more user interface elements such as, for example, a speaker,ringer, microphone, display, and/or the like. The processor and/or userinterface circuitry comprising the processor may be configured tocontrol one or more functions of one or more user interface elementsthrough computer program instructions (e.g., software and/or firmware)stored on a memory accessible to the processor (e.g., memory deviceand/or the like).

Further, the circuit card or other secure module 30 or other type ofsecure memory may be configured to store a plurality of SIMs, asdescribed herein. The SIMs may be software SIMs or VSIMs of varioustypes including, for example, CSIMs, USIMs, RUIMs and ISIMs. In oneexample embodiment, the circuit card is embodied by a universalintegrated circuit card (UICC), an embedded UICC (eUICC) or the like inorder to store the SIMs to facilitate identification and authenticationof the user of a proxy device 10 and or a remote device 12. In thisregard, a SIM may include network access credentials that may includebuy are not limited to: a unique serial number (ICCID) or otherpermanent identifier, an international mobile subscriber identity(IMSI), security authentication and ciphering information, temporaryinformation related to the local network, a list of the services towhich the user has access and/or passwords. The SIMs may be mapped tovarious subscriber identification numbers that identify the proxy device10 or the remote device 12 and/or the user of the proxy device 10 or theremote device 12. For example, the plurality of SIMs may be mapped todifferent mobile station integrated services digital network numbers(MSISDNs). In one example, the first SIM may be mapped to an MSISDN thatis associated with a private subscription of the user, e.g., the user'spersonal telephone number, while the second SIM is mapped to a differentMSISDN that is associated with a data subscription.

Referring now to FIG. 3, an apparatus 32 that may be embodied by orotherwise associated with a network entity 16 for providing networkaccess credentials and which may include or otherwise be incommunication with a processor 34, a memory device 36 and acommunication interface 38. In some example embodiments, the processor(and/or co-processors or any other processing circuitry assisting orotherwise associated with the processor) may be in communication withthe memory device via a bus for passing information among components ofthe apparatus. The memory device may include, for example, one or morevolatile and/or non-volatile memories. In other words, for example, thememory device may be an electronic storage device (e.g., a computerreadable storage medium) comprising gates configured to store data(e.g., bits) that may be retrievable by a machine (e.g., a computingdevice like the processor). The memory device may be configured to storeinformation, data, content, applications, instructions, or the like forenabling the apparatus to carry out various functions in accordance withan example embodiment of the present invention. For example, the memorydevice could be configured to buffer input data for processing by theprocessor. Additionally or alternatively, the memory device could beconfigured to store instructions for execution by the processor.

The apparatus 32 may, in some example embodiments, be embodied by anetwork entity 16, such as a server or other computing device. However,in some embodiments, the apparatus may be embodied as a chip or chipset. In other words, the apparatus may comprise one or more physicalpackages (e.g., chips) including materials, components and/or wires on astructural assembly (e.g., a baseboard). The structural assembly mayprovide physical strength, conservation of size, and/or limitation ofelectrical interaction for component circuitry included thereon. Theapparatus may therefore, in some cases, be configured to implement anembodiment of the present invention on a single chip or as a single“system on a chip.” As such, in some cases, a chip or chipset mayconstitute means for performing one or more operations for providing thefunctionalities described herein.

The processor 34 may be embodied in a number of different ways. Forexample, the processor may be embodied as one or more of varioushardware processing means such as a coprocessor, a microprocessor, acontroller, a DSP, a processing element with or without an accompanyingDSP, or various other processing circuitry including integrated circuitssuch as, for example, an ASIC, an FPGA, a MCU, a hardware accelerator, aspecial-purpose computer chip, or the like. As such, in someembodiments, the processor may include one or more processing coresconfigured to perform independently. A multi-core processor may enablemultiprocessing within a single physical package. Additionally oralternatively, the processor may include one or more processorsconfigured in tandem via the bus to enable independent execution ofinstructions, pipelining and/or multithreading. In the embodiment inwhich the apparatus 32 is embodied as a network entity 16, the processormay be embodied by the processor of the network entity, such as theprocessor of a server or other computing device.

In an example embodiment, the processor 34 may be configured to executeinstructions stored in the memory device 36 or otherwise accessible tothe processor. Alternatively or additionally, the processor may beconfigured to execute hard coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to an embodimentof the present invention while configured accordingly. Thus, forexample, when the processor is embodied as an ASIC, FPGA or the like,the processor may be specifically configured hardware for conducting theoperations described herein. Alternatively, as another example, when theprocessor is embodied as an executor of software instructions, theinstructions may specifically configure the processor to perform thealgorithms and/or operations described herein when the instructions areexecuted. However, in some cases, the processor may be a processor of aspecific device (e.g., a network entity 16) configured to employ anembodiment of the present invention by further configuration of theprocessor by instructions for performing the algorithms and/oroperations described herein. The processor may include, among otherthings, a clock, an ALU and logic gates configured to support operationof the processor.

Meanwhile, the communication interface 38 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network 14 and/or any other device or module in communicationwith the apparatus 32. In this regard, the communication interface mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may alternatively or also support wiredcommunication. As such, for example, the communication interface mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, DSL, USB or other mechanisms.

FIG. 4 is a flow chart of the operations performed from the perspectiveof a proxy device 10 in accordance with an example embodiment of thepresent invention. As is shown with reference to FIG. 1, a remote device12 may be configured to access a network via a proxy device 10. In somecases, the remote device 12 may not be configured to communicatedirectly with an access point or an enhance node B (eNB). However theremote device may be configured to communicate with a proxy device 10.The proxy device 10, however, may be configured to communicate with anetwork entity 16 and ultimately with a subscription database. As isdescribed herein, the remote device 12 may be in communication with theproxy device 10 via the following non-exhaustive list of availableinterfaces: LTE D2D interface, GSM, WCDMA, 2G or 3G interface, 802.11interface, NFC, or equivalent proximity communication interface,Bluetooth, Zigbee or equivalent sensor networking radio.

As shown in operation 40, the apparatus 20 embodied, for example, by aproxy device 10, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for receiving a request fornetwork access credentials from the remote device 12. In someembodiments the network access credentials may comprise identificationinformation related to at least one SIM, such as an IMSI or the like.

As shown in operation 42, the apparatus 20 embodied, for example, by aproxy device 10, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for determining whethernetwork access credentials are available for the remote device. In someexample embodiments, the proxy device 10, may determine, such as by theprocessor 22, the method in which network access credentials may beretrieved. For example, in some example embodiments, the network accesscredentials may be stored in a memory 24. See operation 44.

In example embodiments and in an instance in which there are one or morenetwork access credentials either stored in the memory 24 of the proxydevice 10 or accessible via the communications interface 26, the proxydevice 10 may cause the network access credentials to be issued to theremote device 12. The proxy device 10 may also be configured todistribute stored credentials to other remote devices. In these exampleembodiments, the proxy device 10 may operate similar to a mobilehotspot. For example, a user of the proxy device 10 may operate aplurality of remote devices and thus may want provision each one ofthose devices to access a network via the same proxy device 10 under asame user account (e.g. for billing purposes).

Alternatively or additionally, the proxy devices 10 may be configured toverify that the remote device 12 is permitted to access the network 14.In some example embodiments, verification is based on at least one of acommunication received from a subscription database or identificationinformation stored in the memory 24.

In other example embodiments, the proxy device 10 may operate as arelay. As shown in operation 46, the apparatus 20 embodied, for example,by a proxy device 10, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for causing a connection witha subscription database to enable the remote device to communicatedirectly with the subscription database. For example, the proxy device10 may act as a data pipe, relay, access point or the like to enable theremote device 12 to communicate directly with the network entity, forexample, in order to obtain network access credentials.

In other example embodiments, the proxy device 10 may be configured toobtain network access credentials from a network entity 16, such as thesubscription database, and may further be configured to provide thosecredentials to the proxy device 10. In particular, the proxy device 10,such as via the processor 22, may generate a request for the networkaccess credentials for transmission to a subscription database. As shownin operation 48, the apparatus 20 embodied, for example, by a proxydevice 10, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for receiving the networkaccess credentials in response to a request for the network accesscredentials transmitted to the subscription database. In further exampleembodiments, the proxy device 10, such as via the processor 22, thecommunications interface or the like, may cause a message to betransmitted to the subscription database indicating an identity of oneor more connected remote devices 12.

Alternatively or additionally, in some example embodiments, the remotedevice 12 may connect to the subscriptions database. In such cases, theremote device 12 may receive temporary network access credentials. Theproxy device 10 may then cause, such as by the processor 22, the networkaccess credentials to be activated. In some example embodiments and inan instance in which the network access credentials are activated, theremote device 12 may be enabled to utilize the network accesscredentials to connect to the network 14 via one or more proxy devices,such as proxy device 10.

As shown in operation 50, the apparatus 20 embodied, for example, by aproxy device 10, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for causing the network accesscredentials to be provided to the remote device 12 in an instance inwhich network access credentials are available for the remote device 12.For example the network access credentials may be available in aninstance in which they were accessible from the memory 24 of the proxydevice 10, they were received from the network entity 16 and/or thelike.

In some example embodiments, the network access credentials areconfigured to enable access to a network 14 by one or more remotedevices 12 via one or more proxy devices 10. The remote device 12, insome example embodiments, is configured to access the network using theproxy device 10, as a connection, as a data pipe, as a proxy, as anaccess point, and/or the like, to enable access to the network. In orderto access the network via the proxy device 10, the remote device maycause the network access credentials to be provided to the proxy device.Once connected to the network via the proxy device 10, the remote device12 may have access to various services and data that would be availableto the proxy device 10 and/or may have access to a subset of servicesthat are available to the proxy device 10. For example, the remotedevice 12 may be configured to access the Internet, send messages and/orthe like.

FIG. 5 is a flow chart of the operations performed from the perspectiveof a network entity 16, such as a subscription database, in accordancewith an example embodiment of the present invention. In some exampleembodiments, the subscription database may be implemented on a networkentity 16 and configured to provide network access credentials to remotedevices 12. The subscription database may further be configured toprovide cellular provisioning data for the remote device 12. Thesubscription database may also be available via various wirelessnetworks as described herein, or may be accessible via a provisioningnetwork. The subscription database may be monitored and/or managed by anetwork operator in some embodiments.

As shown in operation 52, the apparatus 20 embodied, for example, by anetwork entity 16, may comprise means, such as the processor 34, thecommunications interface 38, or the like, for receiving a request fornetwork access credentials from a remote device 12 via a proxy device10. In response to the request, the network entity 16, such as thesubscription database, may generate, using the processor 34, networkaccess credentials for the remote device 12. See operation 54. In someexample embodiments, the network access credentials are configured toinclude identification information for the remote device 12 andidentification for the proxy device 10 that may enable access to anetwork 14. For example the remote device 12 may be configured to accessthe network 14 via a particular proxy device 10 and thus may includeidentification information relating that proxy device 10 in its networkaccess credentials. In other embodiments, the network entity 16 may alsotrack both the identification information for the remote device 12 andproxy device 10 for billing purposes and/or for security relatedpurposes.

In some example embodiments, the operator of the subscription databasemay be configured to bill and charge for particular services on thenetwork 14 by determining identity and billing information assigned to aremote device 12 when connected to the network. Alternatively oradditionally the proxy device 10 may be billed for enabling access tothe network.

As shown in operation 56, the apparatus 20 embodied, for example, by anetwork entity 16, may comprise means, such as the processor 34, thecommunications interface 38, or the like, for causing the network accesscredentials to be transferred to the remote device via the proxy device.In some example embodiments, the network access credentials areconfigured to enable the remote device 12 to operate on the network 14when in communication with the proxy device 10.

FIG. 6 is a flow chart of the operations performed from the perspectiveof a remote device in accordance with an example embodiment of thepresent invention. The remote device 12 may be configured to detect,locate, or otherwise connect to a proxy device 10 in order to connect toa network. As shown in operation 60, the apparatus 20 embodied, forexample, by a remote device 12, may comprise means, such as theprocessor 22, the communications interface 26, or the like, for causinga request for network access credentials to be transmitted to a proxydevice. In some example embodiments, the network access credentialscomprise identification information related to at least one SIM.

As shown in operation 62, the apparatus 20 embodied, for example, by aremote device 12, may comprise means, such as the processor 22, thecommunications interface 26, or the like, for receiving network accesscredentials. As shown in operation 64, the apparatus 20 embodied, forexample, by a remote device 12, may comprise means, such as theprocessor 22, the communications interface 26, or the like, for causinga connection with one or more proxy devices. In some exampleembodiments, the connection and the network access credentials enablecommunication with a network via the one or more proxy devices.

As described above, FIGS. 4-6 illustrate a flowchart of an apparatus,method, and computer program product from the perspective of a proxydevice 10, remote device 12 and a network entity 16, respectively,according to example embodiments of the invention. It will be understoodthat each block of the flowchart, and combinations of blocks in theflowchart, may be implemented by various means, such as hardware,firmware, processor, circuitry, and/or other devices associated withexecution of software including one or more computer programinstructions. For example, one or more of the procedures described abovemay be embodied by computer program instructions. In this regard, thecomputer program instructions which embody the procedures describedabove may be stored by a memory device of an apparatus employing anembodiment of the present invention and executed by a processor of theapparatus. As will be appreciated, any such computer programinstructions may be loaded onto a computer or other programmableapparatus (e.g., hardware) to produce a machine, such that the resultingcomputer or other programmable apparatus implements the functionsspecified in the flowchart blocks. These computer program instructionsmay also be stored in a computer-readable memory that may direct acomputer or other programmable apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture the execution of whichimplements the function specified in the flowchart blocks. The computerprogram instructions may also be loaded onto a computer or otherprogrammable apparatus to cause a series of operations to be performedon the computer or other programmable apparatus to produce acomputer-implemented process such that the instructions which execute onthe computer or other programmable apparatus provide operations forimplementing the functions specified in the flowchart blocks.

Accordingly, blocks of the flowchart support combinations of means forperforming the specified functions and combinations of operations forperforming the specified functions for performing the specifiedfunctions. It will also be understood that one or more blocks of theflowchart, and combinations of blocks in the flowchart, may beimplemented by special purpose hardware-based computer systems whichperform the specified functions, or combinations of special purposehardware and computer instructions.

In some embodiments, certain ones of the operations above may bemodified or further amplified. Furthermore, in some embodiments,additional optional operations may be included, such as shown by thedashed boxes in FIG. 4. Modifications, additions, or amplifications tothe operations above may be performed in any order and in anycombination.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although the foregoing descriptions and the associateddrawings describe example embodiments in the context of certain examplecombinations of elements and/or functions, it should be appreciated thatdifferent combinations of elements and/or functions may be provided byalternative embodiments without departing from the scope of the appendedclaims. In this regard, for example, different combinations of elementsand/or functions than those explicitly described above are alsocontemplated as may be set forth in some of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

That which is claimed:
 1. A method comprising: receiving a request fornetwork access credentials from a remote device; wherein the networkaccess credentials comprise identification information related to atleast one subscriber identity module (SIM); determining, using aprocessor, whether network access credentials are available for theremote device; and causing the network access credentials to be providedto the remote device in an instance in which network access credentialsare available for the remote device, wherein the network accesscredentials enable access to a network by the remote device, whereinsaid access to the network is via one or more proxy devices.
 2. A methodaccording to claim 1, further comprising: causing network accesscredentials to be retrieved from a memory, wherein the memory comprisesone or more network access credentials to be distributed to one or moreremote devices.
 3. A method according to claim 2, further comprising:verifying that the remote device is permitted to access the network;wherein verification is based on at least one of a communicationreceived from a subscription database or identification informationstored in the memory.
 4. A method according to claim 1, furthercomprising: generating a request for the network access credentials fortransmission to a subscription database; and receiving the networkaccess credentials in response to a request for the network accesscredentials transmitted to the subscription database.
 5. A methodaccording to claim 4, further comprising: causing the network accesscredentials to be activated; wherein in an instance in which the networkaccess credentials are activated, the remote device is enabled toutilize the network access credentials to connect to the network via oneor more proxy devices.
 6. A method according to claim 1, furthercomprising: causing a connection with a subscription database to enablethe remote device to communicate directly with the subscriptiondatabase.
 7. A method according to claim 1, further comprising: causinginformation relating one or more connected remote devices to betransmitted to a subscription database.
 8. An apparatus comprising: atleast one processor; and at least one memory including computer programcode, the at least one memory and the computer program code configuredto, with the at least one processor, cause the apparatus to at least:receive a request for network access credentials from a remote device;wherein the network access credentials comprise identificationinformation related to at least one subscriber identity module (SIM);determine whether network access credentials are available for theremote device; and cause the network access credentials to be providedto the remote device in an instance in which network access credentialsare available for the remote device, wherein the network accesscredentials enable access to a network by the remote device, whereinsaid access to the network is via one or more proxy devices.
 9. Anapparatus according to claim 8, wherein the at least one memoryincluding the computer program code is further configured to, with theat least one processor, cause the apparatus to: cause network accesscredentials to be retrieved from a memory, wherein the memory comprisesone or more network access credentials to be distributed to one or moreremote devices.
 10. An apparatus according to claim 9, wherein the atleast one memory including the computer program code is furtherconfigured to, with the at least one processor, cause the apparatus to:verify that the remote device is permitted to access the network;wherein verification is based on at least one of a communicationreceived from a subscription database or identification informationstored in the memory.
 11. An apparatus according to claim 8, wherein theat least one memory including the computer program code is furtherconfigured to, with the at least one processor, cause the apparatus to:generate a request for the network access credentials for transmissionto a subscription database; and receive the network access credentialsin response to a request for the network access credentials transmittedto the subscription database.
 12. An apparatus according to claim 11,wherein the at least one memory including the computer program code isfurther configured to, with the at least one processor, cause theapparatus to: causing the network access credentials to be activated;wherein in an instance in which the network access credentials areactivated, the remote device is enabled to utilize the network accesscredentials to connect to the network via one or more proxy devices. 13.An apparatus according to claim 8 wherein the at least one memoryincluding the computer program code is further configured to, with theat least one processor, cause the apparatus to: cause a connection witha subscription database to enable the remote device to communicatedirectly with the subscription database.
 14. An apparatus according toclaim 8, wherein the at least one memory including the computer programcode is further configured to, with the at least one processor, causethe apparatus to: cause information relating one or more connectedremote devices to be transmitted to a subscription database.
 15. Amethod comprising: receiving a request for network access credentialsfrom a remote device via a proxy device; generating, using a processor,network access credentials, wherein the network access credentialsenable the remote device, in an instance in which the remote device isconnected to the proxy device, to connect to a network using the networkaccess credentials; and causing the network access credentials to betransferred to the remote device via the proxy device, wherein thenetwork access credentials enable access to a network by the remotedevice, wherein said access to the network is via the proxy device. 16.A method according to claim 15, wherein the network access credentialsare configured to enable the remote device to operate on the networkwhen in communication with the proxy device.
 17. A method according toclaim 15, wherein the proxy device is configured to activate the networkaccess credentials.
 18. A method according to claim 15, furthercomprising: determining whether the remote device has accessed one ormore services based on the network access credentials, wherein thenetwork access credentials are used to generate billing information forthe remote device.
 19. A method according to claim 15, furthercomprising: causing a security related parameter to be assigned to theremote device.
 20. A method according to claim 15, wherein the networkaccess credentials are configured to include identification informationfor the remote device and identification for the proxy device andcomprise identification information related to at least one subscriberidentity module (SIM).